#ifndef __EXTI_H__
#define __EXTI_H__

#include "gd32f4xx.h"
#include "Exti_config.h"

void EXTI_init();


#if USE_EXTI_0
extern void Exti0_on_trig();
#if EXTI0_SOFT_TRIG
void Exti0_soft_trig();
#endif
#endif

#if USE_EXTI_1
extern void Exti1_on_trig();
#if EXTI1_SOFT_TRIG
void Exti1_soft_trig();
#endif
#endif

#if USE_EXTI_2
extern void Exti2_on_trig();
#if EXTI2_SOFT_TRIG
void Exti2_soft_trig();
#endif
#endif

#if USE_EXTI_3
extern void Exti3_on_trig();
#if EXTI3_SOFT_TRIG
void Exti3_soft_trig();
#endif
#endif

#if USE_EXTI_4
extern void Exti4_on_trig();
#if EXTI4_SOFT_TRIG
void Exti4_soft_trig();
#endif
#endif

#if USE_EXTI_5
extern void Exti5_on_trig();
#if EXTI5_SOFT_TRIG
void Exti5_soft_trig();
#endif
#endif

#if USE_EXTI_6
extern void Exti6_on_trig();
#if EXTI6_SOFT_TRIG
void Exti6_soft_trig();
#endif
#endif

#if USE_EXTI_7
extern void Exti7_on_trig();
#if EXTI7_SOFT_TRIG
void Exti7_soft_trig();
#endif
#endif

#if USE_EXTI_8
extern void Exti8_on_trig();
#if EXTI8_SOFT_TRIG
void Exti8_soft_trig();
#endif
#endif

#if USE_EXTI_9
extern void Exti9_on_trig();
#if EXTI9_SOFT_TRIG
void Exti9_soft_trig();
#endif
#endif

#if USE_EXTI_10
extern void Exti10_on_trig();
#if EXTI10_SOFT_TRIG
void Exti10_soft_trig();
#endif
#endif

#if USE_EXTI_11
extern void Exti11_on_trig();
#if EXTI11_SOFT_TRIG
void Exti11_soft_trig();
#endif
#endif

#if USE_EXTI_12
extern void Exti12_on_trig();
#if EXTI12_SOFT_TRIG
void Exti12_soft_trig();
#endif
#endif

#if USE_EXTI_13
extern void Exti13_on_trig();
#if EXTI13_SOFT_TRIG
void Exti13_soft_trig();
#endif
#endif

#if USE_EXTI_14
extern void Exti14_on_trig();
#if EXTI14_SOFT_TRIG
void Exti14_soft_trig();
#endif
#endif

#if USE_EXTI_15
extern void Exti15_on_trig();
#if EXTI15_SOFT_TRIG
void Exti15_soft_trig();
#endif
#endif




#endif